Multi-tenancy refers to a principle in software architecture where a single instance of the software runs on server hardware, serving multiple client organizations (tenants) on end devices or on field assets. This architecture pattern is predominantly in use by products that are enabled to be delivered in an on-demand model e.g. SaaS (Software as a Service).
Software as a service (SaaS) sometimes referred to as “software on demand,” is software that is deployed over the internet and/or is deployed to run behind a firewall on a local area network or personal computer. With SaaS, a typical provider licenses an application to customers either as a service on demand, through a subscription, in a “pay-as-you-go” model, or (increasingly) at no charge. This approach to application delivery is part of the utility computing model where all of the technology is in the “cloud” and is accessed over the Internet as a service.
The typical advantages of the SaaS (Software as a Service) include anytime, anywhere accessibility, pay as you go, instant scalability, security, reliability, and APIs (Application Program Interfaces).
Traditionally software products have been built in the past for license based deployment models. There is an ever increasing demand for making the products to be delivered in an on-demand based model. For achieving higher efficiency, there is an ever growing focus on these products to make this on-demand based model adapt to a multi-tenant based architecture.                Software products can be broadly categorized as follows.        1. Enterprise software products, e.g. SAP ERP        2. Infrastructure software products e.g. Vmware virtualization products        3. and Consumer products e.g. Microsoft Office Suite        
Multi-tenancy is an important need for delivering Software-On-Demand as it provides huge cost savings by allowing sharing of computing resources among multiple customers.
Typically, in a multitenant environment, multiple customers share the same application, running on the same operating system, on the same hardware, with the same data-storage mechanism. The distinction between the customers is achieved during application design, thus customers do not share or see each other's data.
A typical ideal approach to make an on-demand based model ‘multitenant’ is to re-architect and reengineer the product from scratch. However, this approach leads to significant disadvantage in terms of cost and time and is not a practical solution always.
The present invention describes a non-intrusive approach for multi-tenancy enablement. The non-intrusive approach of the present invention uses existing security isolation capabilities in an application/product.
The benefits of this ‘non-intrusive’ approach, for an Independent Software Vendor include (but not limited to)                Rapid enablement of the product to be delivered as a service.        Allows the product vendors to continue to sell the same product both via traditional license model and also in a multi-tenant SaaS based model        
To make this technical approach feasible the existing product needs to have a data-isolation mechanism. The present invention also allows for determination of the presence of such data isolation mechanism.
US 2008/0086482 A1, “Method and system for allowing access to developed applications via a multi-tenant on-demand database service”, relates to methods for allowing access to developed applications via a multi-tenant on-demand database service, but it fails to disclose the non-intrusive technical scheme of multi tenancy enablement of the present invention wherein existing security isolation capabilities in the application are used and a wrapper is used on top of the existing application to provide the multi-tenancy without actually modifying any of existing application code.
Further, US 2008/0086482 A1 does not disclose identification of data-isolation layer and building of a controlled provisioning layer that manages the relationship between the customer and the entity that is uniquely created for that customer.
The multi tenancy wrapper of the instant invention performs these functions on the application through existing API's or web services exposed by the application and US 2008/0086482 A1 fails to disclose the same technical feature.
U.S. Pat. No. 6,732,100 B1, “Database access method and system for user role defined access”, relates to database access where a user's access rights to specific data items are defined dynamically, that is, in real time, based on the user's status at the time of access request, and data and user attributes having independent utility and significance apart from access and visibility.
U.S. Pat. No. 6,732,100 B1 also supports multi tenancy support with respect to CTI [Computer Telephony Integration] applications and solves problems associated with the situation of a plurality of merchants and/or financial services organization vendoring out their telephone services and data processing operations to a common vendor.
The present invention is not directed to a database management system as such and the centralized customer database of the present invention—manages the users and access privileges of these users in the application that is to be enabled with multi-tenancy. Also, this database only comprises of a part of solution envisaged.
U.S. Pat. No. 6,732,100 B1 also does not disclose or fairly suggests in any way use of existing security isolation capabilities in the application and introduce a wrapper on top of the existing application to provide the multi-tenancy without having to modify any of existing application code.
U.S. Pat. No. 7,503,031 B2, “Method of transforming an application into an on-demand service” relates to information handling and particularly to software development, installation and management.
U.S. Pat. No. 7,503,031 B2 provides a method of transforming an application, and deploying it as an “on-demand-service” (ODS) an application made accessible via a network, such that user or application provider pays only for resources it uses, or such that resources can shrink and grow depending on the demands of the applications.
However, U.S. Pat. No. 7,503,031 B2 also does not suggests in any way the technical scheme of using existing security isolation capabilities in an application and introduction of a wrapper on top of the existing application to provide the multi-tenancy without having the need to modify any of existing application code.
Thus, none of said documents describe the technical scheme of present invention. Inclusion of non intrusive multi-tenancy as described in the present invention involves no re-engineering of the product and acts as a distinct advantage for the vendor. This also allows for rapid enablement of a software product that is to be delivered as a service.
Further, the present invention allows the product vendors to continue to sell the same product both as a traditional license model and also in a multi-tenant SaaS (Software as a Service) based model. The technical scheme of the present invention can also be successfully extended to Enterprise applications that profile closer to products and need to be accessed as a chargeback service. The present invention also enables rapid roll outs of new feature sets/newer product versions without necessitating changes for the same to be delivered as a service.